In an information communication system that sends/receives data between a server device and a client device which are connected through a network, the server device and the client device send/receive information by using, for example, a connection type transmission scheme.
A representative example of such a connection type transmission scheme is TCP/IP. When TCP/IP is utilized, a sender and a receiver establish a TCP connection therebetween. Then, the sender adds a TCP header, including a sequence number and a window size, to data; separates the data into packets; and sends these packets to the receiver. In response, the receiver sends the sender an acknowledgement (ACK), which indicates the reception of the data. Through the above processing, the data transfer is achieved, in which data reliably arrives in proper order. Moreover, TCP is equipped with a congestion control mechanism that controls a rate of data to be sent to a network, in order to prevent the congestion of the network.
In TCP, a sender internally uses a parameter called a “congestion window”, in order to control the congestion of a network. This congestion window refers to the maximum number of packets which the sender is allowed to sequentially send the receiver without the acknowledgement from the receiver. Immediately after the TCP connection is established, the sender sets the congestion window to a small value as an initial one, thereby decreasing the amount of data to be sent. Subsequently, every time the sender receives the acknowledgement, it increases the congestion window, thereby increasing the amount of data to be sent, so that the bandwidth of the network is used efficiently. This operation is known as a slow start.